using System;
using System.Collections.Generic;
using System.Text;

namespace ComputaGuru.SpEAd
{
    internal class LinkLabelState
    {
        private string labelSymbol = String.Empty;
        private bool isVisible = true;

        public string Symbol
        {
            get { return labelSymbol; }
            set { labelSymbol = value; }
        }

        public bool IsVisible
        {
            get { return isVisible; }
            set { isVisible = value; }
        }

        public override string ToString()
        {
            switch (this.Symbol)
            {
                case LinkLabelSymbol.SourceBottomLabel:
                    return "Source Bottom Label";
                case LinkLabelSymbol.SourceTopLabel:
                    return "Source Top Label";
                case LinkLabelSymbol.MiddleBottomLabel:
                    return "Middle Bottom Label";
                case LinkLabelSymbol.MiddleTopLabel:
                    return "Middle Top Label";
                case LinkLabelSymbol.TargetBottomLabel:
                    return "Target Bottom Label";
                case LinkLabelSymbol.TargetTopLabel:
                    return "Target Top Label";
                case LinkLabelSymbol.RealizedItemSource:
                    return "Realized Item Source";
                case LinkLabelSymbol.RealizedItemTarget:
                    return "Realized Item Target";
                default:
                    return "Unknown";
            }
        }

        public LinkLabelState(string labelSymbol)
        {
            this.Symbol = labelSymbol;
        }
    }
}
